home *** CD-ROM | disk | FTP | other *** search
/ ShareWare OnLine 2 / ShareWare OnLine Volume 2 (CMS Software)(1993).iso / bbs_soft / gver12s.zip / GVERIFY.DOC < prev    next >
Text File  |  1993-05-07  |  44KB  |  1,123 lines

  1.  
  2.  
  3.       GAP_Verify v1.2                                               5/7/93
  4.  
  5.  
  6.       
  7.       
  8.       
  9.            GAP_Verify - The External Filebase Verifier for GAP
  10.              
  11.                   Copyright (c) 1993 RoboSoft Systems.  
  12.                         All Rights Reserved.
  13.         
  14.       
  15.       
  16.       GAP_Verify is a batch mode maintenance tool for the GAP 
  17.       filebase.  It's primary functions are:
  18.       
  19.         1.  Verify the size, date, and location of files in 
  20.             the filebase.
  21.         2.  Word-wrap the enhanced descriptions to fit the 
  22.             72-character line allowed by GAP.
  23.         3.  Extract and use FILE_ID.DIZ descriptions if found
  24.             in .ZIP files.
  25.         4.  Re-parse the keywords using a sysop-defined list
  26.             of words to be excluded from use as indexed 
  27.             keywords.
  28.         5.  Look for "lost" files on the hard drive.  These are
  29.             files that exist on the hard drive but aren't in 
  30.             the GAP filebase.
  31.       
  32.       There are many options available to control exactly what gets 
  33.       done and how it is accomplished, but these are the base 
  34.       functions.
  35.       
  36.       To provide for extremely fast operation, GAP_Verify makes use 
  37.       of advanced virtual memory techniques.  If you have a couple 
  38.       megabytes of EMS/XMS memory available, GAP_Verify should just 
  39.       about fly on your machine.  The verify process should run 
  40.       anywhere from twice as fast to upwards of ten times as fast as 
  41.       the GAPFILE UPDATE function, depending on exactly what is 
  42.       being updated.
  43.       
  44.       GAP_Verify can word-wrap the enhanced descriptions to 
  45.       72-character lines, optionally filtering out the high-ASCII 
  46.       characters often used to draw cute boxes around the 
  47.       descriptions.  
  48.       
  49.       You can have GAP_Verify look for a FILE_ID.DIZ in each .ZIP 
  50.       file it verifies.  If found, the DIZ description will be 
  51.       extracted and used to replace the current description.  
  52.       Related to this function is the ability to specify a list of 
  53.       words which should not be indexed as keywords if found in the 
  54.       DIZ description.  This can cut down tremendously on the size 
  55.       of your FILEKEY files by eliminating nonsense keywords.
  56.       
  57.       GAP_Verify can re-parse the existing keywords using the 
  58.       keyword exclusion list mentioned above.  The parsing
  59.       algorithm used by GAP_Verify is slightly different than that
  60.       used by GAP itself and should result in a slight improvement
  61.       in the resulting list of keywords.
  62.  
  63.  
  64.                                       -1-                                 
  65.  
  66.  
  67.  
  68.  
  69.       GAP_Verify v1.2                                               5/7/93
  70.  
  71.  
  72.       
  73.       GAP_Verify can also print out a list of the files encountered 
  74.       in the directories it searched during the verification process 
  75.       that did not show up in the filebase.  If used correctly, this 
  76.       can help find a lot of dead wood on your hard drives (or locate 
  77.       files that fell into the cracks).
  78.       
  79.       One particularly handy use for GAP_Verify is to periodically 
  80.       scan your upload area and extract the FILE_ID.DIZ descriptions
  81.       from the files uploaded in non-batch mode.  It will also update
  82.       the file sizes to correct for comments added to the ZIP during
  83.       UPCHECK processing.
  84.       
  85.       Because the whole idea behind GAP_Verify is speedy 
  86.       verification of your filebase, it allows a great degree of 
  87.       control over which files are verified and which directories 
  88.       are searched when looking for files.  You can tell GAP_Verify 
  89.       to ignore one or more partitions during its scan of the 
  90.       filebase.  Any files that reside on those partitions, 
  91.       according to the location in the filebase, will be completely 
  92.       skipped.  
  93.       
  94.       You can tell GAP_Verify to scan entire partitions, specific 
  95.       directories, or any combination of the two.  So if you want it 
  96.       to scan all of drive D:, but only a couple directories on 
  97.       drive E:, GAP_Verify can handle it.
  98.       
  99.       You can provide a list of specific files that should be 
  100.       skipped.  This list gives you complete control over exactly 
  101.       which characteristic of the file (size, date, location, 
  102.       description, DIZ, keywords) should be skipped/ignored during
  103.       the verification.  Because this list might be rather lengthy,
  104.       GAP_Verify can even generate one for you.
  105.       
  106.       If you use the parameter file method to tell GAP_Verify which 
  107.       partitions and/or directories to scan, it will automatically 
  108.       create a file containing the names of the directories it 
  109.       scanned.  If, on a later run, you haven't modified the 
  110.       parameter file, GAP_Verify will simply load the directory 
  111.       names from the file it previously created.  If your directory 
  112.       structure changes infrequently, this technique can save quite 
  113.       a bit of startup time.
  114.       
  115.       GAP_Verify will automatically create a log file listing 
  116.       information about all the filebase entries it modified.
  117.       
  118.       All the GAP_Verify parameters can be specified on the command 
  119.       line.  If you missed one or more required parameters, 
  120.       GAP_Verify will prompt you for those parameters.  Because 
  121.       there are so many control parameters whose command-line 
  122.       versions are a bit cryptic, you can set up an environment 
  123.       variable with a default set of parameters and specify 
  124.       overrides or additions, if necessary, on the command line.
  125.       
  126.       If you don't want to mess with the command line, just put 
  127.       GAP_Verify in your GAP default directory and run it.  It will 
  128.  
  129.  
  130.                                       -2-                                 
  131.  
  132.  
  133.  
  134.  
  135.       GAP_Verify v1.2                                               5/7/93
  136.  
  137.  
  138.       prompt you for each required parameter and give you a complete 
  139.       explanation of what each is for.  There are a few of the "fine
  140.       tuning" features of GAP_Verify that are only available from the
  141.       command line, but you'll probably never miss them if you really
  142.       don't want to mess with the command line.
  143.       
  144.       Before we get into the details, here's the legal stuff.
  145.       
  146.       Disclaimer
  147.       ----------
  148.       
  149.       GAP_Verify is provided AS IS without any warranty, expressed or
  150.       implied, including, but not limited to, fitness for any purpose.
  151.       Use of GAP_Verify, and the consequences thereof, are entirely
  152.       your risk.  In no event will RoboSoft Systems be liable for any
  153.       damages whatsoever resulting from the use of GAP_Verify.
  154.       
  155.       
  156.       Shareware
  157.       ---------
  158.       
  159.       GAP_Verify is a Shareware product.  As such, it is made available
  160.       to the GAP sysop community for evaluation.  Users are licensed to
  161.       operate this program on their computers for the purpose of test
  162.       and evaluation on a trial basis for 30 days.  If GAP_Verify is
  163.       used after the first 30 days, registration with RoboSoft Systems
  164.       is required.
  165.       
  166.       Registration
  167.       ------------
  168.       
  169.       Registered users are those users who elect to pay for GAP_Verify
  170.       and register that payment with RoboSoft Systems.  By virtue of
  171.       registration and payment for the program, registered users are
  172.       granted a license to continue to utilize the program on their
  173.       personal computer for as long as they choose.  This license
  174.       authorizes the registrant to use the program on any personal
  175.       computer system he or she may own or use so long as the program
  176.       is operated on only one computer system at a time.
  177.       
  178.       The registration fee for GAP_Verify is $20.  Please make
  179.       checks payable to:
  180.       
  181.                             RoboSoft Systems
  182.                              P.O. Box 2221
  183.                          Orange, CA  92669-0221
  184.       
  185.       The payment of this registration fee to RoboSoft Systems entitles
  186.       the user to full use of GAP_Verify for an unlimited period of
  187.       time.  Registration includes a key file that unlocks all features
  188.       of GAP_Verify.  See the file REGISTER.DOC for additional
  189.       information on GAP_Verify registration.
  190.       
  191.       
  192.       Updates/Upgrades
  193.       ----------------
  194.  
  195.  
  196.                                       -3-                                 
  197.  
  198.  
  199.  
  200.  
  201.       GAP_Verify v1.2                                               5/7/93
  202.  
  203.  
  204.       
  205.       In-version upgrades to GAP_Verify (e.g.  v1.1 -> v1.2) will be
  206.       provided via BBS free of charge to registered users.  There is
  207.       currently no charge for version upgrades (e.g.  v1.2 -> v2.0) to
  208.       GAP_Verify, however RoboSoft Systems reserves the right to
  209.       institute such a charge at some point in the future.  If you
  210.       would like to receive an update on diskette, there will be a
  211.       nominal charge to cover materials and handling.
  212.       
  213.       Support
  214.       -------
  215.       
  216.       Support for GAP_Verify is available on The Cookie Jar BBS at
  217.       714-997-0350.  Registered users will be granted access to the
  218.       private node of the BBS and will be given priority in having
  219.       their questions answered.
  220.       
  221.       Distribution
  222.       ------------
  223.       
  224.       GAP_Verify may be freely distributed on any Bulletin Board System
  225.       (BBS), including commercial systems such as CompuServe (CIS),
  226.       Genie, and BIX.  GAP_Verify may be distributed by diskette by any
  227.       organization or disk distributor as long as the fee for this
  228.       distribution is no greater than $5 and it is made clear to the
  229.       purchaser that the distribution fee is NOT the same as the
  230.       registration fee.
  231.       
  232.       Feel free to pass around copies of GAP_Verify, however, please
  233.       distribute all of the original files and do not modify any of the
  234.       files.
  235.       
  236.       
  237.       How Do I Use This Thing?
  238.       ------------------------
  239.       
  240.       The simplest way to use GAP_Verify is to just copy it to your 
  241.       GAP default directory and run it.  It will prompt you for all 
  242.       the required information and then go about its task.  There 
  243.       are a couple parameters that can only be specified on the 
  244.       command line, but they're fairly advanced features that you'll 
  245.       probably never miss.  If you prefer to keep GAP_Verify in a 
  246.       separate directory, just specify the path to the GAP default 
  247.       directory as the first parameter.
  248.       
  249.       Since GAP_Verify will interactively prompt you for any missing 
  250.       parameters and give a full explanation of what is being 
  251.       requested, we'll just cover the command line parameters here.  
  252.       
  253.       Here is the definition for the command line:
  254.       
  255.         GVERIFY [<path to GAP default>] [/P<parmfile>] [/V<a>[<a>]] 
  256.                 [/D|d] [/Z|z] [/O|o] [/R|r] [/F|f] [/W|w] [/H|h]
  257.                 [/E|e] [/X|x] [/L|l] [/K|k] [/T|t] [/M|m]
  258.                 [/An] [/Sn[,n]] [/Nn] [/Y[Pn]|y]
  259.       
  260.  
  261.  
  262.                                       -4-                                 
  263.  
  264.  
  265.  
  266.  
  267.       GAP_Verify v1.2                                               5/7/93
  268.  
  269.  
  270.       The brackets, [], indicate optional parameters.  The vertical 
  271.       bar, |, indicates a choice between one of the parameters on 
  272.       either side of the bar.
  273.       
  274.       With the exceptions of /P, /V, /A, /N, and /S, the parameters all 
  275.       indicate whether an action should or should not be taken, with 
  276.       the upper case letter indicating that it should be taken and 
  277.       the lower case letter indicating that it should not be taken.  
  278.       An attempt was made to make the parameter letters somewhat 
  279.       mnemonic, but there was a serious overlap with a lot of the 
  280.       function names so some are a bit more mnemonic than others.
  281.       
  282.       Because this command line can get a bit lengthy, GAP_Verify 
  283.       will look for the environment variable V_PARMS and use the 
  284.       parameters included there as defaults.  Any V_PARMS parameters 
  285.       can be overriden on the command line.  
  286.       
  287.       Running GAP_Verify with the parameter /? will print out a 
  288.       short help list for the options.
  289.       
  290.       [/P<parmfile>]
  291.       --------------
  292.       
  293.       The /P parameter is used to specify a Parameter file 
  294.       containing a list of the partitions and/or directories that 
  295.       GAP_Verify should scan when looking for files.  The 
  296.       partitions/directories should be listed one per line in this 
  297.       file.  If not specified on the command line, GAP_Verify will 
  298.       prompt for the partitions to be scanned.  Directory-level 
  299.       control is not available via the interactive interface.
  300.       
  301.       Example:
  302.       
  303.         GVERIFY /Pdirs.prm
  304.       
  305.       This will read in a list of partitions/directories from the 
  306.       file DIRS.PRM.
  307.       
  308.       [/V<a>[<a>]]
  309.       ------------
  310.       
  311.       The /V parameter is used to specify Volumes (partitions) that 
  312.       should be skipped when verifying files.  If the filebase 
  313.       indicates a file resides on one of the specified partitions,
  314.       that file will be completely skipped.  No update whatsoever 
  315.       will be done on it.  This parameter is handy for use with 
  316.       CD-ROMs where the file information never changes.
  317.       
  318.       Example:
  319.       
  320.         GVERIFY /VFG
  321.       
  322.       This will exclude from update all files residing on partitions 
  323.       F: and G:.  Notice that there is no space between the F and 
  324.       the G.
  325.       
  326.  
  327.  
  328.                                       -5-                                 
  329.  
  330.  
  331.  
  332.  
  333.       GAP_Verify v1.2                                               5/7/93
  334.  
  335.  
  336.       [/D|d]
  337.       ------
  338.       
  339.       The /D parameter is used to indicate whether file Dates should 
  340.       be updated during the scan of the filebase.  An upper case 'D' 
  341.       indicates to include dates in the scan.  A lower case 'd' 
  342.       indicates that dates should be ignored.
  343.       
  344.       Example:
  345.       
  346.         GVERIFY /d
  347.       
  348.       This tells GAP_Verify to ignore file dates during the filebase 
  349.       update.
  350.       
  351.       [/Z|z]
  352.       ------
  353.       
  354.       The /Z parameter is used to indicate whether file siZes should 
  355.       be updated during the scan of the filebase.  An upper case 'Z' 
  356.       indicates to include sizes in the scan.  A lower case 'z' 
  357.       indicates that sizes should be excluded.
  358.       
  359.       Example:
  360.       
  361.         GVERIFY /Z
  362.       
  363.       This tells GAP_Verify to update file sizes to reflect the 
  364.       actual size on disk during the filebase update.
  365.       
  366.       [/O|o]
  367.       ------
  368.       
  369.       The /O parameter is used to indicate whether files that are 
  370.       not physically found on the disk should be deleted from the 
  371.       filebase or made OFFLINE.  An upper case 'O' indicates that 
  372.       files not found should be made OFFLINE.  A lower case 'o' 
  373.       indicates that files not found should be deleted.  Files that 
  374.       are already marked as OFFLINE are not affected by this 
  375.       parameter.
  376.       
  377.       Example:
  378.       
  379.         GVERIFY /o
  380.       
  381.       This tells GAP_Verify to delete from the filebase all files 
  382.       not physically found on the disk.
  383.       
  384.       [/R|r]
  385.       ------
  386.       
  387.       The /R parameter is used to force a Rebuild of the directory
  388.       list maintained by GAP_Verify (GVERIFY.DIR).  If you've
  389.       changed your directory structure but have not modified the /P
  390.       parameter file, you can use this parameter to force GAP_Verify
  391.       to rescan the directory structure.  An upper case 'R'
  392.  
  393.  
  394.                                       -6-                                 
  395.  
  396.  
  397.  
  398.  
  399.       GAP_Verify v1.2                                               5/7/93
  400.  
  401.  
  402.       indicates that the directory list should be rebuilt.  A lower
  403.       case 'r' indicates that the directory list should not be
  404.       rebuilt.
  405.       
  406.       If the /P parameter file has been updated since the directory 
  407.       list was written, GAP_Verify will ignore this parameter and 
  408.       always rebuild the directory list.
  409.       
  410.       This command line parameter has no analagous parameter in the 
  411.       interactive mode.  If the /P parameter file is not specified 
  412.       on the command line, GAP_Verify will automatically build an 
  413.       internal directory list.  This internal list will not affect 
  414.       the list normally maintained on the disk.
  415.       
  416.       Example:
  417.       
  418.         GVERIFY /Pdirs.prm /r /V /D /Z /o /f /W /H /E /x /t /A0 /S
  419.       
  420.       This tells GAP_Verify to use the directory list that's already 
  421.       been created and to not rescan the directory structure of the 
  422.       partitions specified in DIRS.PRM.
  423.       
  424.       
  425.       [/F|f]
  426.       ------
  427.       
  428.       The /F parameter is used to run GAP_Verify in "saFe" mode.  In 
  429.       "safe" mode, GAP_Verify will do all of its normal functions, 
  430.       but it will make NO changes to the GAP filebase.  This allows 
  431.       you to do a dry run to see what GAP_Verify thinks should be 
  432.       done to the filebase.  An upper case 'F' indicates that saFe 
  433.       mode should be used.  A lower case 'f' indicates that the 
  434.       filebase should actually be updated. 
  435.       
  436.       Example:
  437.       
  438.         GVERIFY /F
  439.       
  440.       This tells GAP_Verify to operate in saFe mode.  No changes 
  441.       will be made to the GAP filebase.
  442.       
  443.       [/W|w]
  444.       ------
  445.       
  446.       The /W parameter indicates whether GAP_Verify should word Wrap 
  447.       the enhanced descriptions.  An upper case 'W' indicates that 
  448.       all enhanced descriptions should be word Wrapped to a 
  449.       72-character line.  A lower case 'w' indicates the enhanced 
  450.       descriptions should be left as is.
  451.       
  452.       Example:
  453.       
  454.         GVERIFY /W
  455.       
  456.       This tells GAP_Verify to word wrap all enhanced descriptions 
  457.       to a 72-character line.
  458.  
  459.  
  460.                                       -7-                                 
  461.  
  462.  
  463.  
  464.  
  465.       GAP_Verify v1.2                                               5/7/93
  466.  
  467.  
  468.       
  469.       [/H|h]
  470.       ------
  471.       
  472.       The /H parameter indicates whether GAP_Verify should filter 
  473.       out high-ASCII characters from the enhanced descriptions.  
  474.       While this option operates independent of the /W option, it is 
  475.       intended for use with the word wrapping enabled by the /W 
  476.       option.  An upper case 'H' indicates that high-ASCII 
  477.       characters should be removed from the enhanced description.  
  478.       A lower case 'h' indicates that high-ASCII characters should 
  479.       be left as is.
  480.       
  481.       Example:
  482.       
  483.         GVERIFY /W /H
  484.       
  485.       This tells GAP_Verify to remove all high-ASCII characters 
  486.       from the enhanced description and to then word wrap all 
  487.       the descriptions to a 72-character line.
  488.       
  489.       [/E|e]
  490.       ------
  491.       
  492.       The /E parameter indicates whether GAP_Verify should Extract 
  493.       FILE_ID.DIZ descriptions from .ZIP files and replace the 
  494.       current keywords and description with the ones from the .DIZ 
  495.       file.  An upper case 'E' indicates that GAP_Verify should look 
  496.       for and Extract FILE_ID.DIZ descriptions.  A lower case 'e' 
  497.       indicates that no scan for FILE_ID.DIZ should be performed.
  498.       
  499.       Since each file must be physically scanned and PKUNZIP run to 
  500.       extract any FILE_ID.DIZ files, specifying that GAP_Verify 
  501.       should extract FILE_ID.DIZ descriptions will significantly 
  502.       increase the time required to run GAP_Verify.  Depending on 
  503.       the speed of your disk and/or network and the size of your 
  504.       filebase, a scan with the /E option specified could take 
  505.       anywhere from a few hours to a few days.
  506.       
  507.       Since GAP_Verify has to scan the entire .ZIP file looking for a
  508.       FILE_ID.DIZ, it collects data about the files in the .ZIP and
  509.       adds a contents line of the form "Files: xx Oldest: xx/xx/xx
  510.       Newest: xx/xx/xx" to the end of the enhanced description.  If the
  511.       enhanced description appears to already contain such a contents
  512.       line, a new one will not be added.
  513.       
  514.       Because of the possibility of FILE_ID.DIZ extraction taking
  515.       many hours, it is strongly recommended that you have
  516.       GAP_Verify generate an Exclude file during a FILE_ID.DIZ run.
  517.       If you need to interrupt GAP_Verify before it has completed
  518.       the entire run, you will be able to resume the run at a later
  519.       time and all the files in the Exclude file will be ignored.
  520.       This is not the same as picking up exactly where you
  521.       interrupted the process, but it's not too far off.
  522.       
  523.       GAP_Verify will create and/or use a temporary directory to 
  524.  
  525.  
  526.                                       -8-                                 
  527.  
  528.  
  529.  
  530.  
  531.       GAP_Verify v1.2                                               5/7/93
  532.  
  533.  
  534.       UNZIP the FILE_ID.DIZ files into.  If you set up an 
  535.       environment variable V_DIR specifying the path to a work 
  536.       directory, GAP_Verify will UNZIP into that directory.  A small 
  537.       RAM disk can be used in this fashion to speed up the process.  
  538.       If no V_DIR environment variable exists, GAP_Verify will 
  539.       create a temporary directory, VERIFY.$$$, off of the current 
  540.       directory.  This directory will be deleted, if it didn't exist 
  541.       prior to starting GAP_Verify, after completion of the filebase 
  542.       verification.
  543.       
  544.       Also used in conjunction with the /E parameter is the 
  545.       KEYWORDS.XCL file.  This file is assumed to contain a list of 
  546.       words, one word per line, that are not be be indexed as 
  547.       keywords.  This allows you to filter out some of the more 
  548.       common words (like "the", "and", "of") that are meaningless as 
  549.       keywords.  These words will still show up in the "keywords" 
  550.       that are displayed in the condensed listings, but they will 
  551.       not be indexed as keywords.  A sample KEYWORDS.XCL is included 
  552.       with the GAP_Verify package.
  553.       
  554.       Example:
  555.       
  556.         GVERIFY /E
  557.       
  558.       This tells GAP_Verify to look for and extract FILE_ID.DIZ 
  559.       descriptions for any .ZIP files that are scanned.  The 
  560.       FILE_ID.DIZ description is used to replace the existing 
  561.       description and keywords.  Descriptions extracted from 
  562.       FILE_ID.DIZ files are automatically filtered for high-ASCII 
  563.       and word wrapped to a 72-character line.
  564.       
  565.       [/X|x]
  566.       ------
  567.       
  568.       The /X parameter indicates whether GAP_Verify should generate 
  569.       an exclude file from the files scanned.  GAP_Verify will 
  570.       automatically look for the file GVERIFY.XCL and read in the 
  571.       list of files contained within it.  These files will be 
  572.       excluded from the verification process.  See below for more 
  573.       details on the format of GVERIFY.XCL.
  574.       
  575.       An upper case 'X' indicates that GAP_Verify should append to 
  576.       the eXclude file the names of all files verified in this run 
  577.       of GAP_Verify.  A lower case 'x' indicates that GAP_Verify 
  578.       should not generate an exclude file.
  579.       
  580.       Example:
  581.       
  582.         GVERIFY /X
  583.       
  584.       This tells GAP_Verify to append all newly updated files to the 
  585.       end of the exclude file.
  586.       
  587.       
  588.       Each line of the GVERIFY.XCL file has the following format.
  589.       
  590.  
  591.  
  592.                                       -9-                                 
  593.  
  594.  
  595.  
  596.  
  597.       GAP_Verify v1.2                                               5/7/93
  598.  
  599.  
  600.         <filename> [<area> [<subject>]] [S] [D] [L] [P] [Z] [K]
  601.       
  602.       An area may be specified without a subject, but a subject MUST 
  603.       be preceded by an area.  The letters at the end of the line 
  604.       indicate from which portion of the verification and 
  605.       reformatting the file should be excluded.
  606.       
  607.          S indicates that Size should not be considered.
  608.          D indicates that Date should not be considered.
  609.          L indicates that Location should not be considered.
  610.          P indicates that the descriPtion should not be reformatted.
  611.            This option also activates the Z option.
  612.          Z indicates that no attempt should be made to extract
  613.            a FILE_ID.DIZ from the file.
  614.          K indicates that the Keywords should not be re-parsed.
  615.       
  616.       
  617.       If you've indicated that GAP_Verify should append to the 
  618.       exclude file, it will add a line with the filename, area, 
  619.       subject, and a 'P' for each file it scans, exclusive of those 
  620.       that are excluded for other reasons.  Note that the exclude 
  621.       file is appended to, not written over.  It can be re-used 
  622.       on subsequent runs of GAP_Verify without difficulty.
  623.       
  624.       [/L|l]
  625.       ------
  626.       
  627.       The /L parameter instructs GAP_Verify to pre-Load information 
  628.       about the files in all the directories that will be scanned.  
  629.       Whenever GAP_Verify scans a directory to verify the location 
  630.       of a file, it hangs onto the information about all the other 
  631.       files in that directory.  This means it only has to scan a 
  632.       given directory once, regardless of how many files in the 
  633.       filebase reside in that directory.  Ordinarily, GAP_Verify 
  634.       scans directories only as needed, discarding the collected 
  635.       file information at the end of each filebase subject.
  636.       
  637.       An upper case 'L' indicates that GAP_Verify should collect at 
  638.       the start of the program information about all the files in 
  639.       the list of directories to be scanned.  This essentially gets 
  640.       all the physical disk scanning out of the way up front.  A 
  641.       lower case 'l' indicates that GAP_Verify should collect file 
  642.       information only as needed.
  643.       
  644.       Example:
  645.       
  646.         GVERIFY /L
  647.       
  648.       This instructs GAP_Verify to pre-Load all file information 
  649.       before beginning to verify the filebase.
  650.       
  651.       This option is available only from the command line.
  652.       
  653.       If you have lots of EMS/XMS memory available and have moved 
  654.       files all over the place or if you use the same physical
  655.       directory to store files from many subject, pre-loading the file
  656.  
  657.  
  658.                                       -10-                                
  659.  
  660.  
  661.  
  662.  
  663.       GAP_Verify v1.2                                               5/7/93
  664.  
  665.  
  666.       info may save some time.  Do not attempt to use this option
  667.       unless you have at least 500k of conventional memory and several
  668.       megabytes of EMS or XMS available.
  669.       
  670.       [/K|k]
  671.       ------
  672.       
  673.       The /K parameter instructs GAP_Verify to Keep file information 
  674.       across subjects.  As mentioned above, GAP_Verify normally 
  675.       discards the file information it has collected at the end of 
  676.       each subject.  An upper case 'K' will force GAP_Verify to hang 
  677.       onto the file information it has collected.  A lower case 'k' 
  678.       tells GAP_Verify to behave normally and discard the file 
  679.       information at the end of each subject.
  680.       
  681.       If you have several subjects that share the same physical 
  682.       directory space on your hard disk, the /K option can save a 
  683.       bit of time that would otherwise be spent rescanning the same 
  684.       directories.
  685.       
  686.       Example:
  687.       
  688.         GVERIFY /K
  689.       
  690.       This tells GAP_Verify to Keep the collected file information 
  691.       until the end of the run instead of discarding it at the end 
  692.       of each subject.
  693.       
  694.       [/T|t]
  695.       ------
  696.       
  697.       The /T parameter indicates whether GAP_Verify should do a losT 
  698.       file search at the end of the run.  As mentioned above, when 
  699.       GAP_Verify encounters a file from a directory it hasn't 
  700.       scanned, it collects information about all the files in that 
  701.       directory.  As it encounters other files in that directory, it 
  702.       marks those files as "found" in its list of file information.  
  703.       At the end of the run GAP_Verify can print out a list of the 
  704.       files that weren't "found" in the filebase.  This will be a 
  705.       list of files that are physically on the disk in the 
  706.       directories that were scanned, but were not found in the 
  707.       filebase during the verification.  This list may or may not be 
  708.       helpful in finding files that have fallen through the cracks.
  709.       
  710.       The /T option does not interract with GVERIFY.XCL exclude 
  711.       list, so it may indicate that many files are "lost" when they 
  712.       were actually on the exclude list and simply not processed by 
  713.       GAP_Verify.  If you want to do a thorough "lost" file scan, 
  714.       you should delete (or rename) GVERIFY.XCL before running 
  715.       GAP_Verify.  
  716.       
  717.       This option requires quite a bit of storage and may have an 
  718.       adverse effect on performance if you don't have lots of free 
  719.       EMS/XMS.
  720.       
  721.       An upper case 'T' indicates that GAP_Verify should do a "losT" 
  722.  
  723.  
  724.                                       -11-                                
  725.  
  726.  
  727.  
  728.  
  729.       GAP_Verify v1.2                                               5/7/93
  730.  
  731.  
  732.       file search at the end of the run.  A lower case 't' indicates 
  733.       that a "lost" file search should not be done.
  734.       
  735.       Example:
  736.       
  737.         GVERIFY /T
  738.       
  739.       This tells GAP_Verify to do a "lost" file search.
  740.       
  741.       [/M|m]
  742.       ------
  743.       
  744.       The /M (suMmary) parameter indicates whether GAP_Verify should
  745.       pause at the end of the run and wait for a keypress before
  746.       exiting.  Normally, when run entirely from the command line,
  747.       GAP_Verify will pause for 15 seconds at the end of the run and
  748.       then exit.  If you specify the /M parameter (with an upper
  749.       case 'M') on the command line, GAP_Verify will wait for a
  750.       keypress before exiting at the end of the run.  The point of
  751.       this is so you can view the summary statistics displayed at
  752.       the end of the run.  If you don't care about this or are
  753.       running GAP_Verify from an event, the standard 15 second pause
  754.       is the way to go.  A lower case 'm' specifies the standard
  755.       behavior of a 15 second pause and then an automatic exit.
  756.       
  757.       When run in interactive mode, the /M parameter is ignored.  In
  758.       interactive mode, GAP_Verify always waits for a keypress at
  759.       the end of the run.
  760.       
  761.       
  762.       [/An]
  763.       -----
  764.       
  765.       The /A parameter indicates which file area (forum) GAP_VERFIY 
  766.       should process.
  767.       
  768.       Example:
  769.       
  770.         GVERIFY /A0
  771.       
  772.       This tells GAP_Verify to verify the files in forum 0, the main 
  773.       board.
  774.       
  775.       
  776.       [/Sn[,n...]]
  777.       ------------
  778.       
  779.       The /S parameter indicates which file subjects within the 
  780.       previously specified area should be processed.  Multiple 
  781.       subjects can be specified by separating the subject numbers 
  782.       with commas.
  783.       
  784.       Example:
  785.       
  786.         GVERIFY /A0 /S1,2,3,4
  787.       
  788.  
  789.  
  790.                                       -12-                                
  791.  
  792.  
  793.  
  794.  
  795.       GAP_Verify v1.2                                               5/7/93
  796.  
  797.  
  798.       This tells GAP_Verify to verify the files in forum 0, subjects 
  799.       1, 2, 3, and 4.
  800.       
  801.       
  802.       [/Nn]
  803.       -----
  804.       
  805.       The /N parameter is used to specify a "nice" delay factor 
  806.       (multi-user version only).  (Nice is a take-off on a Unix
  807.       command that establishes a process priority.)  Because of 
  808.       the heavy amount of disk I/O performed by GAP_Verify, it can 
  809.       bring a multi-user system to its knees if run while users are 
  810.       still online.  The "nice" parameter is used to specify a number 
  811.       of milliseconds to delay after processing each file.  This 
  812.       delay gives other nodes a window of access to the filebase 
  813.       without competition from GAP_Verify. The system response will 
  814.       appear a bit jerky to the users, but it's better than getting 
  815.       no response at all.  A good starting point for the delay factor
  816.       is 250.  This will cause GAP_Verify to pause for a quarter 
  817.       second after each file.  This will obviously make the
  818.       GAP_Verify run take longer than it otherwise would, but at
  819.       least the other nodes in your system can be online during this
  820.       time.
  821.       
  822.       You can adjust the "nice" factor interactively while GAP_Verify
  823.       is running by pressing the '+' and '-' keys.  Each press of '+'
  824.       will add 50ms to the delay time.  Each press of '-' will subtract
  825.       50ms from the delay time.  These keys are active even if you 
  826.       didn't use the "nice" parameter on the command line.
  827.       
  828.       Example:
  829.       
  830.         GVERIFY /N250
  831.       
  832.       This tells GAP_Verify to pause for 250 milliseconds after 
  833.       processing each file.
  834.       
  835.       
  836.       [/Y[Pn]|y]
  837.       ----------
  838.       
  839.       The /Y parameter indicates whether GAP_Verify should re-index
  840.       the keywords.  GAP_Verify uses a different keyword parsing
  841.       algorithm than GAP itself and should produce a greater number
  842.       of unique keywords.  It also allows you to specify a list of
  843.       words that will not be indexed as keywords.  This can be used
  844.       to eliminate a lot of words that don't make sense as keywords,
  845.       such as "the", "and", "of", etc.  The same KEYWORDS.XCL file
  846.       mentioned under the /E parameter is used for excluding words
  847.       parsed by the /Y parameter.
  848.       
  849.       Associated with this re-indexing of the keywords is the 
  850.       ability to pre-load all the keywords into virtual memory.
  851.       Whether this provides better performance depends largely on
  852.       how your system is configured.  Do not attempt to pre-load the
  853.       keywords unless you have at least several megabytes of EMS/XMS
  854.  
  855.  
  856.                                       -13-                                
  857.  
  858.  
  859.  
  860.  
  861.       GAP_Verify v1.2                                               5/7/93
  862.  
  863.  
  864.       available.  (Nothing terrible will happen, but you'll get worse
  865.       performance than if you didn't pre-load the keywords.)  As the
  866.       keywords are being loaded, each keyword is displayed in the lower
  867.       right status window.  If the words in this window are not flying
  868.       by so fast you have no chance of reading them, you'd probably be
  869.       better off to terminate that run and restart, specifying that
  870.       keywords should not be pre-loaded.  Press any key to terminate
  871.       the run.
  872.       
  873.       The 'n' after the P is used to specify how many keywords per
  874.       file GAP_Verify should allow for.  The default is 10.  If you
  875.       have more keywords associated with a file than the number
  876.       specified here, the program will abort.  (The abort happens
  877.       during the pre-loading, before any filebase updates are made
  878.       so there's no danger of any kind of filebase corruption.  All
  879.       you'll lose is the time it took to get to that point in the
  880.       pre-loading.)  It's unfortunate that this parameter was 
  881.       necessary, but it's the only way to accomodate those who have
  882.       a lot of small keywords for some of their files while not
  883.       penalizing everyone with massive virtual memory requirements.
  884.       
  885.       Example:
  886.       
  887.         GVERIFY /YP15
  888.       
  889.       This tells GAP_Verify to re-index the keywords and to pre-load
  890.       the existing keywords into virtual memory, allowing for up to
  891.       15 keywords per file.
  892.       
  893.       
  894.       General Operation
  895.       -----------------
  896.       
  897.       As GAP_Verify does its thing, it will print out status 
  898.       information to the screen.  Fairly complete information about
  899.       the current run is displayed.  In the upper middle of the
  900.       screen are the major parameters affecting the behavior of this
  901.       run along with the current area and subject.  On the left side
  902.       of the screen are various counts that are displayed primarily
  903.       for the sake of curiosity.  (The "Content Bytes" field will
  904.       only display a meaningful value if you are extracting
  905.       FILE_ID.DIZ descriptions in the current run.) Toward the
  906.       bottom left of the screen is the expected and actual data for
  907.       the current file.  If expected and actual are the same, you
  908.       probably won't be able to actually read these fields because
  909.       they'll be changing too fast.  
  910.       
  911.       On the right side of the screen is the History window.  The
  912.       names of files that were updated are scrolled in this window.
  913.       Following the file name are one or more letters, displayed in
  914.       fixed positions, indicating what was changed for that file.
  915.       The letters, their position and meaning are as follows:
  916.       
  917.                                 DSLDKZ
  918.                                 ^^^^^^
  919.                            Date ┘││││└ DIZ
  920.  
  921.  
  922.                                       -14-                                
  923.  
  924.  
  925.  
  926.  
  927.       GAP_Verify v1.2                                               5/7/93
  928.  
  929.  
  930.                            Size ─┘││└─ Keywords
  931.                        Location ──┘└── Description
  932.                        
  933.       At the bottom of the screen are two status windows.  The one
  934.       on the left is used to display messages about the current
  935.       operation.  The one on the right is used to display progress
  936.       information, usually a quickly changing list of filenames or
  937.       keywords.  It's primary purpose is to let you know the program
  938.       is actually doing something during time-consuming operations.
  939.       
  940.       GAP_Verify will also write to a log file the information about 
  941.       any file that was changed.  The default name for this log file 
  942.       is GVERIFY.LOG.  You can specify a different log file name by 
  943.       using the environment variable V_LOG.  The log file will 
  944.       always be appended to, so you should keep an eye on the size 
  945.       to be sure it doesn't grow too big.
  946.       
  947.       You can interrupt GAP_Verify at almost any time by pressing
  948.       any key.  GAP_Verify will finish up the file it's currently
  949.       working on and then ask if you really want to terminate the
  950.       run. 
  951.       
  952.       
  953.       A Few Words About Files
  954.       -----------------------
  955.       
  956.       GAP_Verify makes use of quite a few different files.  They've 
  957.       all been mentioned individually, but a quick recap is probably 
  958.       in order.
  959.       
  960.       GVERIFY.DIR  - This file contains a list of all the 
  961.                      directories in the partitions GAP_Verify 
  962.                      scanned.
  963.       GVERIFY.XCL  - This file contains a list of files that should 
  964.                      be ignored during the verification.  GAP_Verify
  965.                      can generate this file automatically for use on
  966.                      subsequent runs.
  967.       GVERIFY.LOG  - Log of all changes made to the filebase.  The 
  968.                      name of this file can be changed with the V_LOG
  969.                      environment variable.
  970.       KEYWORDS.XCL - This file contains a list of words the sysop 
  971.                      does NOT want indexed as keywords.
  972.       GAP_VRFY.TMP - Virtual memory overflow file.  This should be 
  973.                      automatically deleted on program exit and can 
  974.                      be safely deleted if it exists following a run
  975.                      of GAP_Verify.
  976.       VERIFY.$$$   - Temporary directory created by GAP_Verify for 
  977.                      use with the FILE_ID.DIZ extraction.  Can be 
  978.                      overridden with the V_DIR environment 
  979.                      variable.
  980.       
  981.       Environment Variables
  982.       ---------------------
  983.       
  984.       GAP_Verify recognizes a number of environment variables.  
  985.       These can be used to alter normal program execution or as a 
  986.  
  987.  
  988.                                       -15-                                
  989.  
  990.  
  991.  
  992.  
  993.       GAP_Verify v1.2                                               5/7/93
  994.  
  995.  
  996.       convenience for specifying parameters.  See your DOS manual if 
  997.       you don't know what an environment variable is or how to set 
  998.       one.  (Look for the SET command.)
  999.       
  1000.       V_PARMS      - Used to specify default command line parameters
  1001.                      for GAP_Verify.  
  1002.       V_DIR        - Used to specify an alternate location for the 
  1003.                      temporary directory used when extracting 
  1004.                      FILE_ID.DIZ descriptions from a ZIP file.
  1005.       V_LOG        - Used to specify an alternate filename for the
  1006.                      GAP_Verify log file.
  1007.       
  1008.       
  1009.       Limitations
  1010.       -----------
  1011.       
  1012.       GAP_Verify gets much of its speed from its ability to use
  1013.       virtual memory to store massive amounts of information about
  1014.       your filebase and disk contents.  The virtual memory manager
  1015.       will make use of all available EMS/XMS memory, and will 
  1016.       overflow onto disk if there is not enough faster storage
  1017.       available.  If you are tight on EMS/XMS (or don't have any at
  1018.       all), much of the data required by GAP_Verify will be stored
  1019.       on disk.  In a tight memory situation, be sure to run GAP_Verify
  1020.       from a disk partition that has at least several megabytes 
  1021.       available.
  1022.       
  1023.       If you normally run with a large disk cache, you may find you
  1024.       get better performance by reducing the size of the cache and
  1025.       allowing GAP_Verify to use the memory otherwise devoted to 
  1026.       the cache.  (GAP_Verify does not use raw extended memory.  You
  1027.       need to have some kind of EMS/XMS memory manager running in
  1028.       order for GAP_Verify to access memory beyond 640k.  QEMM, 
  1029.       386MAX, and HIMEM.SYS will all provide the type of memory
  1030.       required by GAP_Verify.)
  1031.       
  1032.       Non-registered Demonstration Version
  1033.       ------------------------------------
  1034.       
  1035.       The non-registered demo version of GAP_Verify has a number of 
  1036.       restrictions not present in the registered version.  It will
  1037.       word-wrap and re-index only the first 50 files in any filebase
  1038.       subject.  It will extract a maximum of 50 FILE_ID.DIZ files in
  1039.       any filebase area.  The non-registered version will not write 
  1040.       an exclude file or pre-load directory information or keywords.
  1041.       It will also not do a "lost" file search.  
  1042.       
  1043.       The multi-node version of GAP_Verify is available to registered
  1044.       users only.  You can use the single-node version with a
  1045.       multi-node version of GAP, but all nodes must be offline before
  1046.       you begin the run.  Failure to bring all nodes down will most
  1047.       likely result in sharing violations.
  1048.       
  1049.       All other program functions work without restriction.  The date,
  1050.       size, and location of all files in the filebase can be updated
  1051.       with the non-registered version.
  1052.  
  1053.  
  1054.                                       -16-                                
  1055.  
  1056.  
  1057.  
  1058.  
  1059.       GAP_Verify v1.2                                               5/7/93
  1060.  
  1061.  
  1062.       
  1063.       We regret having to place these restrictions on the demonstration
  1064.       version, but maintenance utilities of this sort have a poor 
  1065.       registration rate unless there are persuasive registration
  1066.       encouragements provided.  We hope these restrictions will not 
  1067.       prevent you from getting a good idea of what GAP_Verify can
  1068.       do for you.
  1069.       
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.                                       -17-                                
  1121.  
  1122.  
  1123.